Computer systems typically include several peripheral devices for communicating with, observing, and controlling various functions outside the computer. Peripheral devices include terminals, printers, and other input/output devices. In simple computer systems, a processor writes and reads information to and from peripherals utilizing input/output instructions that place commands and data on an input/output bus. Both memory and peripherals may share the same physical bus. Some computers also communicate with their peripherals by using registers that function as memory locations. In such systems, the hardware accesses both main memory and the peripheral device.
In many computer systems, there is no direct path from a peripheral to main memory and data transfer between the peripheral and memory takes place by the processor reading the data from the peripheral for storage in a memory. This process, however, relies upon the data transfer rate of either the peripheral or the computer, and is controlled by the slower rate. In systems requiring higher data transfer rates direct memory access (DMA) is utilized as a link between a peripheral controller and memory to allow a peripheral to read and write memory without processor intervention. Control of the address, data, and control bus is turned over to a DMA controller instead of a microprocessor or microcomputer. Address and data bus information is transferred under control of a DMA controller.
Even with the use of direct memory access techniques, due to the higher speeds at which computers operate, there is still a need for the mechanism of transferring data at high data transfer rates from a peripheral device to a computer. Specifically, most mainframe computers are now operating at rates of three megabytes data transfer rates which is an adequate data transfer rate of for example, an image acquisition device. A need has thus arisen for a data transmission system which provides a mechanism of transferring image data to a host mainframe computer at rates compatible with the operation of the mainframe computer.